Skip to content

Conversation

uhoreg
Copy link
Member

@uhoreg uhoreg commented Oct 17, 2025

Fixes #31073

Since we will, at some point, no longer send megolm sessions to unverified devices, we will force users on login to verify their devices to prevent them from getting UTDs.

⚠️ Do not merge yet (not until at least after element-hq/element-meta#2832 is done) ⚠️

Checklist

@uhoreg uhoreg marked this pull request as ready for review October 17, 2025 21:28
@uhoreg uhoreg requested review from a team as code owners October 17, 2025 21:28
@richvdh richvdh self-requested a review October 23, 2025 14:15
@richvdh richvdh changed the title Force devices to be verified Remove the ability to skip device verification during login Oct 23, 2025
Copy link
Member

@richvdh richvdh left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM otherwise.

Comment on lines 13 to 19
export async function doesServerSupportCrossSigning(cli: MatrixClient): Promise<boolean> {
// cross-signing support was added to Matrix in MSC1756, which landed in spec v1.1
return (
(await cli.isVersionSupported("v1.1")) ||
(await cli.doesServerSupportUnstableFeature("org.matrix.e2e_cross_signing"))
);
}
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd suggest dropping this check altogether. I'm not sure about EW, but the js-sdk claims a minimum supported server version of 1.1, so we should be good.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That sounds sane, if js-sdk flags that your server version is not supported then you will not be able to login anyway iirc

@richvdh
Copy link
Member

richvdh commented Oct 23, 2025

Fixes #28464

My understanding is that this does not fix that issue, because this PR does nothing to change the behaviour for existing, logged-in, but unverified devices, whereas #28464 encompasses things like reminding people to verify their devices, and, ultimately, locking out the whole UI until they have verified?

@t3chguy
Copy link
Member

t3chguy commented Oct 23, 2025

Marking as blocked as per the warning triangle in the description

@uhoreg
Copy link
Member Author

uhoreg commented Oct 23, 2025

Fixes #28464

My understanding is that this does not fix that issue, because this PR does nothing to change the behaviour for existing, logged-in, but unverified devices, whereas #28464 encompasses things like reminding people to verify their devices, and, ultimately, locking out the whole UI until they have verified?

Right, I was going by the "Context" section of that issue's description, which only talks about logging in. But looking at it again, it does indeed look like that issue is a parent issue that encompasses other work. I'll create a new issue for this.

matrix-js-sdk already requires spec version 1.1 support
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Remove the ability to skip device verification during login

3 participants